1. Statement of the Technical Field
The inventive arrangements relate to efficient implementations of Galois field multiplication in cryptographic systems. More particularly, the inventive arrangements relate to an efficient and invertible closed Galois field combination (CGFC) process for combining two or more input sequences in a cryptographic system.
2. Description of the Related Art
Sequence generators are used in applications ranging from signal processing, error correction codes, pseudo-random number generation and cryptographic systems. The underlying mechanism in each of these applications is a sequence that is finite in nature, with the smaller the repetition period of the sequence, the easier it is for an outsider to determine or predict the future values of the sequence. To increase the security of a sequence, most applications increase the length of the generating polynomial, use some type of nonlinear combination technique with multiple orthogonal sequences or otherwise increase the length of the sequence.
These techniques often result in significantly increasing implementation complexity, which translates into increased resource consumption and processing time. Also, for each sequence period, the generating algorithm is typically fixed and tied to a specific irreducible polynomial over a Galois field. It is also desirable to implement combination techniques such that a priori knowledge of one or more of the input sequences yields an efficient method to detect and correct sequence errors that may occur during storage or transmission.
Static examples of modification of a number sequence exist in communication systems. One such example is the Reed Solomon error correction code and derivatives thereof. The Reed Solomon error correction code computes an output value based on Galois extension field multiplications using a primitive element and a fixed irreducible polynomial.
In view of the forgoing, there remains a need for a method to combine a data stream with a random number sequence that is more computationally efficient than conventional methods. There also remains a need for a method to efficiently increase the repetition period of a random number sequence. There further remains a need for a method to combine a data stream with a random number sequence that is more resistant to errors than conventional methods.